--[[
    @Author       : GGELUA
    @Date         : 2022-04-22 15:14:08
Last Modified by: GGELUA
Last Modified time: 2023-07-22 21:35:34
--]]
local 商城 = 多开数据[多开数据.当前].__UI界面.窗口层:创建我的窗口("商城", 0, 0, 830, 534)
local 当前 = 多开数据.当前
--"宝宝",
local 菜单 = { "银子商城", "仙玉商城", "宝宝",  "特殊商城", "锦衣", "祥瑞",  "光环", "锦衣套装", "祥瑞套装", "法宝", "灵宝", "礼包","地煞积分","天罡积分" } --"足迹",
-- local 菜单 = { "银子商城", "仙玉商城",   "特殊商城", "锦衣", "祥瑞", "足迹", "光环", "锦衣套装", "法宝", "灵宝", "礼包" }--,"神器积分","神器积分"
if 服务器表[1].服务组=="包包西游" then
    菜单 = { "银子商城", "仙玉商城",  "特殊商城", "锦衣", "祥瑞",  "光环", "锦衣套装", "祥瑞套装", "法宝", "灵宝", "礼包","地煞积分","天罡积分" } --"足迹",
end
function 商城:初始化()
    __置窗口坐标(self)
    local nsf = require('SDL.图像')(830, 534)
    if nsf:渲染开始() then
        置窗口背景("霓裳宝阁", 0, 12, 822, 523, true):显示(0, 0)
        取白色背景(0, 0, 590, 456, true):显示(214, 57)
        local lssj = 取输入背景(0, 0, 130, 23)
        字体18:置颜色(__取颜色('白色'))
        字体18:取图像('仙玉'):显示(30, 370)
        lssj:显示(70, 368)
        字体18:取图像('银子'):显示(30, 395)
        lssj:显示(70, 393)
        字体18:取图像('点卡'):显示(30, 420)
        lssj:显示(70, 418)
        字体18:取图像('数量'):显示(30, 443)
        取输入背景(0, 0, 60, 23):显示(70, 445)
        nsf:渲染结束()
    end
    self:置精灵(nsf:到精灵())
end

function 商城:加载数据(data)
    self.数据 = data
    self.银子 = data.银子 or 0
    self.仙玉 = data.仙玉 or 0
    self.积分 = data.积分数 or 0
    self.累充 = data.累充 or 0
    self.点卡 = data.点卡 or 0
    self.组号 = data.组号
    if not self.是否可见 then
        self:打开()
    end
end

function 商城:打开()
    self:置可见(true)
    if self.分类 then
        self.商城网格.子控件[self.分类]._spr.确定 = nil
    end
    self.分类 = 1
    self.商城网格.子控件[self.分类]._spr.确定 = true
    self.道具网格:置物品(多开数据[当前].__主控.商城数据[菜单[self.分类]])
    self.数量输入:置数值(1)
    self:重置()
end

function 商城:重置()
    local nsf = require('SDL.图像')(130, 75)
    if nsf:渲染开始() then
        字体18:置颜色(__取颜色('浅黑'))
        字体18:取图像(self.仙玉):显示(0, 3)
        字体18:取图像(self.银子):显示(0, 29)
        字体18:取图像(self.点卡):显示(0, 55)
        nsf:渲染结束()
    end
    self.图像 = nsf:到精灵()
    self.图像:置中心(-75, -368)
end

function 商城:收款码()
    -- local nsf = require('SDL.图像')(640,460)
    -- if nsf:渲染开始() then
    --     多开数据[当前].多开数据[当前].__主控.收款码:显示(0,0)
    --     nsf:渲染结束()
    -- end
    -- self.图像2 = nsf:到精灵()
    -- self.图像2:置中心(-260,-60)
end

local 关闭 = 商城:创建我的按钮(__res:getPNGCC(1, 401, 0, 46, 46), "关闭", 780, 0)

function 关闭:左键弹起(x, y, msg)
    商城:置可见(false)
    self.选中 = nil
end

local 商城网格 = 商城:创建网格("商城网格", 15, 53, 184, 315)

function 商城网格:初始化()
    self:创建格子(184, 55, 9, 0, #菜单, 1, true)
    self:置数据(菜单)
end

function 商城网格:左键弹起(x, y, a, b, msg)
    if 商城.分类 then
        self.子控件[商城.分类]._spr.确定 = nil
    end
    商城.分类 = a
    self.子控件[a]._spr.确定 = true
    if a <= #菜单 then
        商城.图像2 = nil
        if 菜单[商城.分类] == '仙玉充值' then
            商城.道具网格:置物品({})
            --商城:收款码()
            local SDL = require('SDL')
            if __标题 == '西游2' then
                SDL.OpenURL('http://49.235.65.67')
            else
                SDL.OpenURL('http://192.168.3.76')
            end
        elseif 菜单[商城.分类] == '翻一番' then
            商城.道具网格:置物品({})
        else
            商城.道具网格:置物品(多开数据[当前].__主控.商城数据[菜单[商城.分类]])
            商城.道具网格._py = 0
        end
    end
end

function 商城网格:置数据(数据)
    for i = 1, #self.子控件 do
        if 数据[i] then
            local lssj = __阵型格子.创建(当前)
            lssj:置数据(数据[i])
            self.子控件[i]:置精灵(lssj)
        end
    end
end

local 道具网格 = 商城:创建网格("道具网格", 223, 71, 704, 430)

function 道具网格:初始化()

end

function 道具网格:左键弹起(x, y, a, b, msg)
    if 菜单[商城.分类] == "宝宝" then
        if 商城.选中 and self.子控件[商城.选中] then
            if 商城.选中 == a then
                多开数据[当前].__UI界面.窗口层.召唤兽查看:打开(多开数据[当前].__主控.商城数据[菜单[商城.分类]][a])
            else
                self.子控件[商城.选中]._spr.确定 = nil
                if self.子控件[a] and self.子控件[a]._spr and self.子控件[a]._spr.物品 then
                    商城.选中 = a
                    self.子控件[a]._spr.确定 = true
                end
            end
        else
            if self.子控件[a] and self.子控件[a]._spr and self.子控件[a]._spr.物品 then
                商城.选中 = a
                self.子控件[a]._spr.确定 = true
            end
        end
    else
        if 商城.选中 and self.子控件[商城.选中] and self.子控件[商城.选中]._spr and self.子控件[商城.选中]._spr.确定 then
            self.子控件[商城.选中]._spr.确定 = nil
        end
        if self.子控件[a] and self.子控件[a]._spr and self.子控件[a]._spr.物品 then
            商城.选中 = a
            local w, h = self.子控件[a]:取宽高()
            self.子控件[a]._spr.确定 = true
            self.子控件[a]._spr:详情打开(0, 86, w, h, "选择", a)
        end
    end
end

function 道具网格:置物品(数据)
    local lssj = 1
    if #数据 > 4 then
        lssj = #数据 // 4 + 1
    end
    self:创建格子(125, 125, 20, 20, lssj, 4, true)
    for i = 1, #self.子控件 do
        local lssj = __商店格子.创建(当前)
        if 菜单[商城.分类] == "宝宝" then
            lssj:置物品(数据[i], "商城道具", nil, "宝宝")
        else
            lssj:置物品(数据[i], "商城道具")
        end
        if lssj.数据 then
            self.子控件[i]:置精灵(lssj)
        else
            self.子控件[i]:置精灵(nil)
        end
    end
end

local 数量输入 = 商城:创建我的输入("数量输入", 90, 445, 50, 24, 2, 2, '黑色')

local 购买 = 商城:创建我的按钮(__res:getPNGCC(3, 2, 507, 124, 41, true):拉伸(123, 41), "购买", 30, 473, "购买")

function 购买:左键弹起(x, y, msg)
    if 商城.选中 and 菜单[商城.分类] and 商城.数量输入:取数值() then
        local 发送信息 = {
            编号 = 商城.选中,
            位置 = 商城.选中,
            数量 = 商城.数量输入:取数值(),
            组号 = 18,
            分类 = 菜单[商城.分类],
            名称 = 商城.道具网格.子控件[商城.选中]._spr.物品.名称
        }

        if 商城.分类 == "锦衣祥瑞" or 商城.分类 == "积分" then
            发送信息.分类 = 商城.分类
        end
        发送数据(当前 or self and self.当前, 30, 发送信息)
    end
end
